1) Field of the Invention
The present invention relates to an interface circuit for a detachable card memory that requires an access in a specific size, an ASIC (application specific integrated circuit) embedded with the interface circuit, and an image forming apparatus equipped with the ASIC.
2) Description of the Related Art
When reinstalling a software for an image forming apparatus like a printer, a copier, or an MFP (multifunction peripheral), the software is downloaded from a host interface like a memory card, a network, etc. However, when carrying out maintenance or update of software as a field support of the image forming apparatus, sometimes it is not possible to use user's system environment and a host interface cannot be used. Therefore, lots of image forming apparatuses are equipped with a memory card interface to reliably download the software.
Since an access to a memory card can be made in a similar way as an access to a RAM (random access memory), there is no need to initialize an interface by a CPU (central processing unit) and it is also possible to execute a program directly from the memory card. Technologies related to the memory card are described in, for example, Japanese Patent Application Laid Open Publication No. 10-161857 and Japanese Patent Application Laid Open Publication No. 11-242596. However, memory cards generally have low storage capacity of about 4 mega bytes and nowadays it becomes hard to come by. For this reason, an SD (secure digital) card is drawing attention as a substitute for the memory card.
The SD card (SD memory card) is being more popular as a portable media like a floppy disc and is already being used for recording and playing of image data and audio data because of its higher storage capacity as a size of the card.
Unlike the RAM, the SD card includes an MBR (master boot record), a partition table, an FAT (file allocation table), and a data area similarly as in a disc media and is a detachable card memory that requires an access in a specific size.
However, in an SD card interface, unlike a memory card interface, there is a need to initialize an interface controller and the SD card. Moreover, in the SD card, since an offset of a data reading out position varies according to the capacity, when a system uses the SD card, it is required that card information is read through an interface circuit and CPU computes and stores an offset value.
Since an access to the SD card is allowed in sector units, even when CPU reads out data of one byte, it has to read out data of 512 bytes equal to the size of one sector. Therefore, when the CPU executes a program stored in the SD card, it is necessary to read the whole program in sector units, copy the program into a RAM and execute the in the RAM. As a result, the SD card cannot be used unless a program for control called a BIOS (basic input output system) is invoked.
Moreover, when there is a communication error between the SD card and the interface circuit, it is required that the CPU varies communication speed and tries the communication again.
However, in recent years, various types of SD cards have been developed, and among them, an SDIO card (card type I/O) having an I/O function is drawing attention. The SDIO card is a card memory embedded with I/O functions like a Bluetooth, a LAN (wireless local area network), and a GPS (global positioning system).
An interface of the SDIO card is equivalent to that of the SD memory card in order to maintain a compatibility with the SD memory card. However, an initialization procedure for the SDIO card is different from that for the SD memory card. Therefore, when an interface circuit can only recognize a command protocol of the SD memory card and cannot recognize a command protocol of the SDIO card, if SDIO card is inserted, a fault is developed in an initializing unit of the interface circuit that may cause a problem of the whole system. Furthermore, since the SDIO card has the same interface as that in the SD memory card, inserting the SDIO card by mistake while carrying out maintenance or software update as a field support of the image forming apparatus causes a fault in the system.
In recent years, scale of a software is increasing together with the increased scale of image forming apparatuses. This necessitates higher storage capacity of memory that stores the software. For this reason, large size software cannot be installed into an image forming apparatus through the SD memory card.